/*************************************************
filename	: sound.h
author		: Stefan lulham
desc		: Contains the base sound class
			  Sounds are made to be fire and forget, I.e
			  you cannot change how they play once they
			  are started.
*************************************************/
#ifndef D_SOUND_H
#define D_SOUND_H

#include "audio_enums.h"
#include <delgeError.h>

using namespace DelGE;

namespace DelGE
{
	namespace Modules
	{
		namespace Audio
		{
			class Sound
			{
			protected:
				unsigned int uiLengthMS;
				float fVolume;

			public:
				virtual ~Sound() {};

				virtual void Play() = 0;

				unsigned int GetLengthInMS();

				virtual void SetVolume(float fVolume) = 0;	// Setting the volume of a sound wont effect playing versions.
				float GetVolume();
			};
		}
	}
}

#endif